package birdry.transition.utils
{
    import flash.display.*;
    import flash.geom.*;

    public class BitmapU extends Object
    {

        public function BitmapU()
        {
            throw new Error("static 전용입니다");
        }// end function

        public static function convertBitmap(param1:DisplayObject) : Bitmap
        {
            var _loc_2:BitmapData = null;
            _loc_2 = new BitmapData(param1.width, param1.height, true, 0);
            var _loc_3:* = new Matrix();
            _loc_2.draw(param1, _loc_3);
            return new Bitmap(_loc_2, PixelSnapping.AUTO, true);
        }// end function

        public static function scale(param1:DisplayObject, param2:Number, param3:Number) : BitmapData
        {
            var _loc_4:* = param2 / 100;
            var _loc_5:* = param3 / 100;
            var _loc_6:* = new BitmapData(param1.width * _loc_4, param1.height * _loc_5, true, 16711680);
            var _loc_7:* = new Matrix();
            new Matrix().scale(_loc_4, _loc_5);
            _loc_6.draw(param1, _loc_7);
            return _loc_6;
        }// end function

        public static function cropBitmapData(param1:DisplayObject, param2:Rectangle) : BitmapData
        {
            var _loc_3:* = new BitmapData(param2.width, param2.height, true, 16711680);
            var _loc_4:* = new Matrix();
            new Matrix().translate(param2.x, param2.y);
            _loc_3.draw(param1, _loc_4);
            return _loc_3;
        }// end function

        public static function generateByManual(param1:DisplayObject, param2:Number, param3:Number) : BitmapData
        {
            var _loc_4:* = new BitmapData(param2, param3, true, 16711680);
            new BitmapData(param2, param3, true, 16711680).draw(param1);
            return _loc_4;
        }// end function

        public static function convertBitmapData(param1:DisplayObject) : BitmapData
        {
            var _loc_2:* = new BitmapData(param1.width, param1.height, true, 16711680);
            _loc_2.draw(param1);
            return _loc_2;
        }// end function

        public static function cropBitmap(param1:DisplayObject, param2:Rectangle) : Bitmap
        {
            var _loc_3:* = new BitmapData(param2.width, param2.height, true, 16711680);
            var _loc_4:* = new Matrix();
            new Matrix().translate(param2.x, param2.y);
            _loc_3.draw(param1, _loc_4);
            return new Bitmap(_loc_3, PixelSnapping.AUTO, true);
        }// end function

    }
}
